package woaini.wind.modules.workflow.utils;

import cn.hutool.core.convert.Convert;
import lombok.experimental.UtilityClass;
import woaini.wind.modules.workflow.enums.NodeParamType;

/**
 * 节点参数转换工具
 *
 * @author yefeng
 * {@code @Date} 2023-05-16 16:50:39
 * @see NodeParamConvertTool
 */
@UtilityClass
public class NodeParamConvertTool {

    public Object convert(NodeParamType paramType,String value){
        switch (paramType){
            case Byte:{
                return Convert.toByte(value);
            }
            case Date:{
                return Convert.toDate(value);
            }
            case Float:{
                return Convert.toFloat(value);
            }
            case Double:{
                return Convert.toDouble(value);
            }
            case Boolean:{
                return Convert.toBool(value);
            }
            case Integer:{
                return Convert.toInt(value);
            }
            case Character:{
                return Convert.toChar(value);
            }
            case BigDecimal:{
                return Convert.toBigDecimal(value);
            }
            default:return null;
        }
    }
}
